package com.night.icm.model.base.comprehensive_test;

import com.night.icm.common.night_enum.CompAssessProcessStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;

/**
 * ComprehensiveScoreDTO
 *
 * @author Liao ZhiYong
 * @date 2020/2/5
 */
@ApiModel(description = "综合分")
@Data
public class ComprehensiveScoreDTO {

    @ApiModelProperty(position = 110, value = "综合分id，自增")
    private String id;

    @ApiModelProperty(position = 120, value = "综合测评年份，如，2016年-2017年为2016年度综合测评，不分上下学期")
    @NotBlank
    @Size(max = 4)
    private String year;

    @ApiModelProperty(position = 130, value = "学业分，共计70分 = （学业分小计 * 70%）")
    private AcademicPointDTO academicPoint;

    @ApiModelProperty(position = 140, value = "思想分，共计20分 = （思想分小计 * 20%）")
    private IdeologicalPointDTO ideologicalPoint;

    @ApiModelProperty(position = 150, value = "文体分，共计10分 = （文体分小计 * 10%）")
    private StylisticPointDTO stylisticPoint;

    @ApiModelProperty(position = 160, value = "综测流程：草稿、自评、班评、年级复审、评审结果")
    private CompAssessProcessStatus compAssessProcessStatus;

    @ApiModelProperty(position = 170, value = "综测流程中某个阶段的综合分")
    private Double comprehensiveScoreTotal;

    @ApiModelProperty(position = 180, value = "排序")
    private Integer showOrder;

    @ApiModelProperty(position = 190, value = "是否送审，进入下一流程")
    private Boolean isApproval;

    @ApiModelProperty(position = 200, value = "下一流程名称，仅在isApproval为true时生效")
    private CompAssessProcessStatus nextStatus;

    @ApiModelProperty(position = 210, value = "该阶段是否已报送")
    private Boolean isReport;

    @ApiModelProperty(position = 220, value = "学生姓名")
    private String studentName;

    @ApiModelProperty(position = 230, value = "学生学号")
    private String studentCode;
}